package cn.iocoder.yudao.module.design.convert.flow;

import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.design.controller.admin.flow.vo.FlowCreateReqVO;
import cn.iocoder.yudao.module.design.controller.admin.flow.vo.FlowExcelVO;
import cn.iocoder.yudao.module.design.controller.admin.flow.vo.FlowRespVO;
import cn.iocoder.yudao.module.design.controller.admin.flow.vo.FlowUpdateReqVO;
import cn.iocoder.yudao.module.design.controller.admin.house.vo.simpleVo.FlowSimpleRespVO;
import cn.iocoder.yudao.module.design.dal.dataobject.flow.FlowDO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;

import java.util.List;

/**
 * 流程信息 Convert
 *
 * @author czw
 */
@Mapper
public interface FlowConvert {

    FlowConvert INSTANCE = Mappers.getMapper(FlowConvert.class);

    FlowDO convert(FlowCreateReqVO bean);

    FlowDO convert(FlowUpdateReqVO bean);

    FlowRespVO convert(FlowDO bean);

    List<FlowRespVO> convertList(List<FlowDO> list);

    PageResult<FlowRespVO> convertPage(PageResult<FlowDO> page);

    List<FlowExcelVO> convertList02(List<FlowDO> list);

    List<FlowSimpleRespVO> convertList04(List<FlowDO> list);
}
